package ubadbtools.deadlockAnalyzer.grafo;

public class IteradorNodos {

	ListaAdy ady;
	int indice;
	int maxnodos;
	Grafo gr;

	public IteradorNodos(Grafo g) {
		maxnodos = g.maxnodos;
		indice = 0;
		gr = g;
	}

	public IteradorNodos(IteradorNodos i) {
		ady = i.ady;
		indice = i.indice;
		gr = i.gr;
		maxnodos = i.maxnodos;
	}

	public boolean hayMas() {
		int auxnodo;

		auxnodo = indice + 1;
		while ((auxnodo <= maxnodos) && (!gr.existeNodo(auxnodo)))
			auxnodo++;
		return (auxnodo <= maxnodos);
	}

	public int obtenerNodo() {
		indice++;
		while ((indice <= maxnodos) && !gr.existeNodo(indice)) {
			indice++;
			if (indice <= maxnodos)
				return indice;
			else
				System.out
						.print("Error (86) ObtenerNodo de un Iterador vacio.");
			// RunError(86);
		}
		return indice;
	}
}
